home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 16 / CU Amiga Magazine's Super CD-ROM 16 (1997-10-16)(EMAP Images)(GB)[!][issue 1997-11].iso / CUCD / Graphics / Ghostscript / source / msvclib.mak < prev    next >
Makefile  |  1997-07-17  |  9KB  |  292 lines

  1. #    Copyright (C) 1991-1997 Aladdin Enterprises.  All rights reserved.
  2. # This file is part of Aladdin Ghostscript.
  3. # Aladdin Ghostscript is distributed with NO WARRANTY OF ANY KIND.  No author
  4. # or distributor accepts any responsibility for the consequences of using it,
  5. # or for whether it serves any particular purpose or works at all, unless he
  6. # or she says so in writing.  Refer to the Aladdin Ghostscript Free Public
  7. # License (the "License") for full details.
  8. # Every copy of Aladdin Ghostscript must include a copy of the License,
  9. # normally in a plain ASCII text file named PUBLIC.  The License grants you
  10. # the right to copy, modify and redistribute Aladdin Ghostscript, but only
  11. # under certain conditions described in the License.  Among other things, the
  12. # License requires that the copyright notice and this notice be preserved on
  13. # all copies.
  14.  
  15. # msvclib.mak
  16. # makefile for Microsoft Visual C++ 4.1 or later, Windows NT or Windows 95 LIBRARY.
  17. #
  18.  
  19. # ------------------------------- Options ------------------------------- #
  20.  
  21. ###### This section is the only part of the file you should need to edit.
  22.  
  23. # ------ Generic options ------ #
  24.  
  25. # Define the directory that will hold documentation at runtime.
  26.  
  27. GS_DOCDIR=c:/gs
  28.  
  29. # Define the default directory/ies for the runtime initialization and
  30. # font files.  Separate multiple directories with ';'.
  31. # Use / to indicate directories, not \.
  32. # MSVC will not allow \'s here because it sees '\;' CPP-style as an
  33. # illegal escape.
  34.  
  35. GS_LIB_DEFAULT=.;c:/gs/lib;c:/gs/fonts
  36.  
  37. # Define whether or not searching for initialization files should always
  38. # look in the current directory first.  This leads to well-known security
  39. # and confusion problems, but users insist on it.
  40. # NOTE: this also affects searching for files named on the command line:
  41. # see the "File searching" section of use.txt for full details.
  42. # Because of this, setting SEARCH_HERE_FIRST to 0 is not recommended.
  43.  
  44. SEARCH_HERE_FIRST=1
  45.  
  46. # Define the name of the interpreter initialization file.
  47. # (There is no reason to change this.)
  48.  
  49. GS_INIT=gs_init.ps
  50.  
  51. # Choose generic configuration options.
  52.  
  53. # Setting DEBUG=1 includes debugging features (-Z switch) in the code.
  54. # Code runs substantially slower even if no debugging switches are set,
  55. # and also takes about another 25K of memory.
  56.  
  57. DEBUG=0
  58.  
  59. # Setting TDEBUG=1 includes symbol table information for the debugger,
  60. # and also enables stack checking.  Code is substantially slower and larger.
  61.  
  62. TDEBUG=0
  63.  
  64. # Setting NOPRIVATE=1 makes private (static) procedures and variables public,
  65. # so they are visible to the debugger and profiler.
  66. # No execution time or space penalty, just larger .OBJ and .EXE files.
  67.  
  68. NOPRIVATE=0
  69.  
  70. # Define the name of the executable file.
  71.  
  72. GS=gslib
  73.  
  74. # Define the directory where the IJG JPEG library sources are stored,
  75. # and the major version of the library that is stored there.
  76. # You may need to change this if the IJG library version changes.
  77. # See jpeg.mak for more information.
  78.  
  79. JSRCDIR=jpeg-6a
  80. JVERSION=6
  81.  
  82. # Define the directory where the PNG library sources are stored,
  83. # and the version of the library that is stored there.
  84. # You may need to change this if the libpng version changes.
  85. # See libpng.mak for more information.
  86.  
  87. PSRCDIR=libpng
  88. PVERSION=96
  89.  
  90. # Define the directory where the zlib sources are stored.
  91. # See zlib.mak for more information.
  92.  
  93. ZSRCDIR=zlib
  94.  
  95. # Define the configuration ID.  Read gs.mak carefully before changing this.
  96.  
  97. CONFIG=
  98.  
  99. # Define any other compilation flags.
  100.  
  101. CFLAGS=
  102.  
  103. # ------ Platform-specific options ------ #
  104.  
  105. # Define which major version of MSVC is being used (currently, 4 & 5 supported)
  106.  
  107. MSVC_VERSION = 4
  108.  
  109. # Define the drive, directory, and compiler name for the Microsoft C files.
  110. # COMPDIR contains the compiler and linker (normally \msdev\bin).
  111. # INCDIR contains the include files (normally \msdev\include).
  112. # LIBDIR contains the library files (normally \msdev\lib).
  113. # COMP is the full C compiler path name (normally \msdev\bin\cl).
  114. # COMPCPP is the full C++ compiler path name (normally \msdev\bin\cl).
  115. # COMPAUX is the compiler name for DOS utilities (normally \msdev\bin\cl).
  116. # RCOMP is the resource compiler name (normallly \msdev\bin\rc).
  117. # LINK is the full linker path name (normally \msdev\bin\link).
  118. # Note that when INCDIR and LIBDIR are used, they always get a '\' appended,
  119. #   so if you want to use the current directory, use an explicit '.'.
  120.  
  121. !if $(MSVC_VERSION) == 4
  122. DEVSTUDIO=c:\msdev
  123. COMPBASE=$(DEVSTUDIO)
  124. SHAREDBASE=$(DEVSTUDIO)
  125. !else
  126. DEVSTUDIO=c:\devstudio
  127. COMPBASE=$(DEVSTUDIO)\VC
  128. SHAREDBASE=$(DEVSTUDIO)\SharedIDE
  129. !endif
  130. COMPDIR=$(COMPBASE)\bin
  131. LINKDIR=$(COMPBASE)\bin
  132. RCDIR=$(SHAREDBASE)\bin
  133. INCDIR=$(COMPBASE)\include
  134. LIBDIR=$(COMPBASE)\lib
  135. COMP=$(COMPDIR)\cl
  136. COMPCPP=$(COMP)
  137. COMPAUX=$(COMPDIR)\cl
  138. RCOMP=$(RCDIR)\rc
  139. LINK=$(LINKDIR)\link
  140.  
  141. # Define the processor architecture. (i386, ppc, alpha)
  142.  
  143. CPU_FAMILY=i386
  144. #CPU_FAMILY=ppc
  145. #CPU_FAMILY=alpha  # not supported yet - we need someone to tweak
  146.  
  147. # Define the processor (CPU) type. Allowable values depend on the family:
  148. #   i386: 386, 486, 586
  149. #   ppc: 601, 604, 620
  150. #   alpha: not currently used.
  151.  
  152. CPU_TYPE=486
  153. #CPU_TYPE=601
  154.  
  155. !if "$(CPU_FAMILY)"=="i386"
  156.  
  157. # Intel(-compatible) processors are the only ones for which the CPU type
  158. # doesn't indicate whether a math coprocessor is present.
  159. # For Intel processors only, define the math coprocessor (FPU) type.
  160. # Options are -1 (optimize for no FPU), 0 (optimize for FPU present,
  161. # but do not require a FPU), 87, 287, or 387.
  162. # If you have a 486 or Pentium CPU, you should normally set FPU_TYPE to 387,
  163. # since most of these CPUs include the equivalent of an 80387 on-chip;
  164. # however, the 486SX and the Cyrix 486SLC do not have an on-chip FPU, so if
  165. # you have one of these CPUs and no external FPU, set FPU_TYPE to -1 or 0.
  166. # An xx87 option means that the executable will run only if a FPU
  167. # of that type (or higher) is available: this is NOT currently checked
  168. # at runtime.
  169.  
  170. FPU_TYPE=0
  171.  
  172. !endif
  173.  
  174. # ------ Devices and features ------ #
  175.  
  176. # Choose the language feature(s) to include.  See gs.mak for details.
  177.  
  178. FEATURE_DEVS=patlib.dev path1lib.dev hsblib.dev
  179.  
  180. # Choose whether to compile the .ps initialization files into the executable.
  181. # See gs.mak for details.
  182.  
  183. COMPILE_INITS=0
  184.  
  185. # Choose whether to store band lists on files or in memory.
  186. # The choices are 'file' or 'memory'.
  187.  
  188. BAND_LIST_STORAGE=file
  189.  
  190. # Choose which compression method to use when storing band lists in memory.
  191. # The choices are 'lzw' or 'zlib'.  lzw is not recommended, because the
  192. # LZW-compatible code in Ghostscript doesn't actually compress its input.
  193.  
  194. BAND_LIST_COMPRESSOR=zlib
  195.  
  196. # Choose the implementation of file I/O: 'stdio', 'fd', or 'both'.
  197. # See gs.mak and sfilefd.c for more details.
  198.  
  199. FILE_IMPLEMENTATION=stdio
  200.  
  201. # Choose the device(s) to include.  See devs.mak for details.
  202. DEVICE_DEVS=ljet2p.dev
  203. DEVICE_DEVS2=
  204. DEVICE_DEVS3=
  205. DEVICE_DEVS4=
  206. DEVICE_DEVS5=
  207. DEVICE_DEVS6=
  208. DEVICE_DEVS7=
  209. DEVICE_DEVS8=
  210. DEVICE_DEVS9=
  211. DEVICE_DEVS10=
  212. DEVICE_DEVS11=
  213. DEVICE_DEVS12=
  214. DEVICE_DEVS13=
  215. DEVICE_DEVS15=
  216.  
  217. # ---------------------------- End of options ---------------------------- #
  218.  
  219. # Derive values for FPU_TYPE for non-Intel processors.
  220.  
  221. !if "$(CPU_FAMILY)"=="ppc"
  222. !if $(CPU_TYPE)>601
  223. FPU_TYPE=2
  224. !else
  225. FPU_TYPE=1
  226. !endif
  227. !endif
  228.  
  229. !if "$(CPU_FAMILY)"=="alpha"
  230. # *** alpha *** This needs fixing
  231. FPU_TYPE=1
  232. !endif
  233.  
  234. # Define the name of the makefile -- used in dependencies.
  235.  
  236. MAKEFILE=msvclib.mak msvccom.mak winlib.mak
  237.  
  238. # Define the files to be removed by `make clean'.
  239. # nmake expands macros when encountered, not when used,
  240. # so this must precede the !include statements.
  241.  
  242. BEGINFILES2=$(GS).ilk $(GS).pdb
  243.  
  244. # Define these right away because they modify the behavior of
  245. # msvccom.mak & winlib.mak.
  246.  
  247. LIB_ONLY=gslib.obj gsnogc.obj gconfig.obj gscdefs.obj
  248. MAKEDLL=0
  249. PLATFORM=mslib32_
  250.  
  251.  
  252. !include msvccom.mak
  253.  
  254. # -------------------------------- Library -------------------------------- #
  255.  
  256. # The Windows Win32 platform for library
  257.  
  258. # For some reason, C-file dependencies have to be before mslib32__.dev
  259.  
  260. gp_mslib.$(OBJ): gp_mslib.c $(AK)
  261.  
  262. gp_mswin.$(OBJ): gp_mswin.c $(AK) gp_mswin.h \
  263.  $(ctype__h) $(dos__h) $(malloc__h) $(memory__h) $(string__h) $(windows__h) \
  264.  $(gx_h) $(gp_h) $(gpcheck_h) $(gserrors_h) $(gsexit_h)
  265.  
  266. mslib32__=gp_mslib.$(OBJ) gp_mswin.$(OBJ) gp_win32.$(OBJ) gp_nofb.$(OBJ) \
  267.  gp_ntfs.$(OBJ)
  268.  
  269. mslib32_.dev: $(mslib32__) $(ECHOGS_XE)
  270.         $(SETMOD) mslib32_ $(mslib32__)
  271.  
  272. # ----------------------------- Main program ------------------------------ #
  273.  
  274. # The library tester EXE 
  275. $(GS_XE):  $(GS_ALL) $(DEVS_ALL) $(LIB_ONLY) $(LIBCTR)
  276.     copy $(ld_tr) gslib32.tr
  277.     echo gsnogc.obj >> gslib32.tr
  278.     echo gconfig.obj >> gslib32.tr
  279.     echo gscdefs.obj >> gslib32.tr
  280.     echo  /SUBSYSTEM:CONSOLE > gslib32.rsp
  281.     echo  /OUT:$(GS_XE) >> gslib32.rsp
  282.     $(LINK_SETUP)
  283.         $(LINK) $(LCT) @gslib32.rsp gslib @gslib32.tr @$(LIBCTR) $(INTASM) @lib.tr
  284.     -del gslib32.rsp
  285.     -del gslib32.tr
  286.  
  287.  
  288. # end of makefile
  289.